#ifndef BIT_WIN_MODEL_TEMPLATES
#define BIT_WIN_MODEL_TEMPLATES


#include <iterator>


namespace BitWin
{


// First declared in model_class.h
template <template <typename> class Maker, typename FwdIter>
void Model::setUp(FwdIter begin, FwdIter end)
{
    Maker<typename std::iterator_traits<FwdIter>::value_type> maker;
    
    for (this->_data.clear(); begin != end; ++begin)
    {
        this->_data.append(maker(*begin));
    }
    
    this->reset();
}


} // BitWin namespace end

#endif
